Skip to content

Separate human-only PR intake signals#307

Closed
Jhacarreiro wants to merge 1 commit into
openclaw:mainfrom
Jhacarreiro:pr/pr-intake-human-only
Closed

Separate human-only PR intake signals#307
Jhacarreiro wants to merge 1 commit into
openclaw:mainfrom
Jhacarreiro:pr/pr-intake-human-only

Conversation

@Jhacarreiro

Copy link
Copy Markdown
Contributor

Summary

  • classify ClawSweeper status/rating/merge-risk labels as metadata signals rather than automatic repair blockers
  • emit requires_human results for PRs that only have human/workflow metadata and no repairable blocker
  • avoid creating automatic repair jobs for comment-only or label-only cases when proof: sufficient is already present
  • add an optional watch-silence fingerprint config so known watchlisted PRs stay quiet until their stable state changes

Rationale

Repair-only intake should enqueue jobs only when there is an objective repairable blocker, such as failed checks, dirty/blocked merge state, changes requested, or unresolved actionable review threads. Stale labels and human workflow status should be reported separately for maintainer attention instead of creating repair work.

Verification

  • corepack pnpm install --frozen-lockfile
  • corepack pnpm run build:repair
  • node --test test/repair/pr-repair-intake.test.ts

@clawsweeper

clawsweeper Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs real behavior proof before merge. Reviewed June 16, 2026, 3:01 AM ET / 07:01 UTC.

Summary
The branch changes src/repair/pr-repair-intake.ts to separate human/workflow metadata from repairable blockers and add optional watch-silence fingerprinting.

Reproducibility: yes. for the review finding: the GitHub pnpm check log reproduces the format failure. Current-main bug reproduction is otherwise not applicable because this PR adds new automation behavior.

Review metrics: 2 noteworthy metrics.

  • Changed surface: 1 source file changed; 175 additions, 6 deletions. The whole behavioral change is concentrated in the repair-intake script that creates automation jobs.
  • Tests changed: 0 test files changed. The new human-only and watch-silence paths are not accompanied by a test diff in this PR.

Merge readiness
Overall: 🦪 silver shellfish
Proof: 🦪 silver shellfish
Patch quality: 🦐 gold shrimp
Result: blocked until real behavior proof from a real setup is added.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • [P1] Fix the src/repair/pr-repair-intake.ts formatting reported by CI.
  • [P1] Add redacted terminal output from a real repair:pr-intake --dry-run showing the new human-only and normal repair-job cases.

Proof guidance:

  • [P1] Needs real behavior proof before merge: The PR only lists build/test commands, so it needs redacted terminal output or logs from a real after-fix intake dry run before merge; updating the PR body should trigger a fresh review, or a maintainer can comment @clawsweeper re-review. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.

Risk before merge

  • [P1] The branch cannot pass the repository handoff gate until the src/repair/pr-repair-intake.ts formatting failure is fixed.
  • [P1] The new classifier can suppress or create repair jobs, so maintainers need proof that metadata-only PRs become human-only while objective blockers still enqueue repair work.
  • [P1] The optional watch-silence config is a new operational knob and needs maintainer-visible validation before it is trusted in automation.

Maintainer options:

  1. Fix validation and proof before merge (recommended)
    Format the touched file and add redacted real dry-run output showing requires_human, silent, changed-watch, and ordinary repair-job cases behave as intended.
  2. Pause for automation policy review
    If maintainers are unsure about suppressing metadata-only jobs, keep the PR paused until the permanent repair-intake policy is confirmed.

Next step before merge

  • [P1] The PR needs contributor-supplied real behavior proof and a formatting fix; ClawSweeper should not queue repair markers while the proof gate is missing.

Security
Cleared: The diff changes local repair-intake classification and maintainer-supplied JSON config reading; no concrete security or supply-chain regression was found.

Review findings

  • [P2] Run the formatter on the intake changes — src/repair/pr-repair-intake.ts:42-43
Review details

Best possible solution:

Land the intake split only after the file is formatted, focused coverage validates the new classifications, and the PR body includes redacted dry-run output from representative real PR states.

Do we have a high-confidence way to reproduce the issue?

Yes for the review finding: the GitHub pnpm check log reproduces the format failure. Current-main bug reproduction is otherwise not applicable because this PR adds new automation behavior.

Is this the best way to solve the issue?

No, not yet: the implementation direction is plausible, but the current branch is not the best mergeable solution until formatting is fixed and real intake-output proof establishes the classification boundary.

Full review comments:

  • [P2] Run the formatter on the intake changes — src/repair/pr-repair-intake.ts:42-43
    pnpm run check reaches format:check and then fails because src/repair/pr-repair-intake.ts is not oxfmt-clean. This blocks the repository's required handoff check for code changes, so the branch needs formatting before merge.
    Confidence: 0.94

Overall correctness: patch is incorrect
Overall confidence: 0.88

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against c88270b81889.

Label changes

Label changes:

  • add P2: This is a normal-priority repair-automation improvement with a clear validation blocker and limited file scope.
  • add merge-risk: 🚨 automation: The diff changes which PR states create repair jobs versus human-only output, so a bad classification could suppress or create ClawSweeper automation work.
  • add rating: 🦪 silver shellfish: Overall readiness is 🦪 silver shellfish; proof is 🦪 silver shellfish and patch quality is 🦐 gold shrimp.
  • add status: 📣 needs proof: The PR needs real behavior proof before ClawSweeper can clear the contributor ask. Needs real behavior proof before merge: The PR only lists build/test commands, so it needs redacted terminal output or logs from a real after-fix intake dry run before merge; updating the PR body should trigger a fresh review, or a maintainer can comment @clawsweeper re-review. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.

Label justifications:

  • P2: This is a normal-priority repair-automation improvement with a clear validation blocker and limited file scope.
  • merge-risk: 🚨 automation: The diff changes which PR states create repair jobs versus human-only output, so a bad classification could suppress or create ClawSweeper automation work.
  • rating: 🦪 silver shellfish: Overall readiness is 🦪 silver shellfish; proof is 🦪 silver shellfish and patch quality is 🦐 gold shrimp.
  • status: 📣 needs proof: The PR needs real behavior proof before ClawSweeper can clear the contributor ask. Needs real behavior proof before merge: The PR only lists build/test commands, so it needs redacted terminal output or logs from a real after-fix intake dry run before merge; updating the PR body should trigger a fresh review, or a maintainer can comment @clawsweeper re-review. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.
Evidence reviewed

What I checked:

Likely related people:

  • Jhacarreiro: GitHub PR history shows Add repair-only PR intake #290 added the repair-only PR intake feature and touched src/repair/pr-repair-intake.ts and its tests. (role: original repair-intake feature contributor; confidence: high; commits: ff5ada9b0c83, 4d54a576216d, f4a1239a49cc; files: src/repair/pr-repair-intake.ts, test/repair/pr-repair-intake.test.ts)
  • Peter Steinberger: Local blame shows the current main repair-intake file and test landed in dc82491, and PR history for Add repair-only PR intake #290 includes follow-up trust-contract work by this person. (role: current-main release and trust-contract contributor; confidence: high; commits: dc824915bb6c, b58b79937f14; files: src/repair/pr-repair-intake.ts, test/repair/pr-repair-intake.test.ts)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

@clawsweeper clawsweeper Bot added rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P2 Normal priority bug or improvement with limited blast radius. merge-risk: 🚨 automation 🚨 Merging this PR could break CI, automerge, proof capture, label sync, or automation. labels Jun 16, 2026
@steipete

Copy link
Copy Markdown
Contributor

Closing rather than repairing this branch. It combines signal classification with watch-silence state, has no regression coverage for either path, and is superseded operationally by narrower intake work. The useful classification idea can return as a focused, tested change. Thank you for the proposal.

@steipete steipete closed this Jun 19, 2026
@Jhacarreiro

Copy link
Copy Markdown
Contributor Author

Closing this branch for now instead of trying to prove it with local operational runs.

If the human-only intake separation is still needed, it should come back as a small, model-agnostic PR with clean checks and upstream-clean tests/proof. Any adapter or non-Codex-specific behavior must not be part of ClawSweeper.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-risk: 🚨 automation 🚨 Merging this PR could break CI, automerge, proof capture, label sync, or automation. P2 Normal priority bug or improvement with limited blast radius. rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants